<html>
  <head>
    <title>SecurityManager</title>
    <link rel='stylesheet' type='text/css' href='../../../stylesheet.css' title='Style' />
  </head>
  <body>
    <table border='0' width='100%' cellpadding='1' cellspacing='0' summary=''>
      <tr>
        <td colspan='2' bgcolor='#EEEEFF' class='NavBarCell1'>
          <table border='0' cellpadding='0' cellspacing='3' summary=''>
            <tr align='center' valign='top'>
              <td bgcolor='#EEEEFF' class='NavBarCell1'>
                <a href='../../../overview-summary.html'>
                  <font class='NavBarFont1'>
                    <b>Overview</b>
                  </font>
                </a>&nbsp;
              </td>
              <td bgcolor='#EEEEFF' class='NavBarCell1'>
                <a href='package-summary.html'>
                  <font class='NavBarFont1'>
                    <b>Package</b>
                  </font>
                </a>&nbsp;
              </td>
              <td bgcolor='#FFFFFF' class='NavBarCell1Rev'>
                <font class='NavBarFont1Rev'>
                  <b>Unit</b>
                </font>&nbsp;
              </td>
            </tr>
          </table>
        </td>
      </tr>
    </table>
    <hr />
    <h2>
      <font size='-1'>OpenEdge\CommonInfrastructure\Server</font>
      <br />CLASS SecurityManager
    </h2>
    <p>CLASS OpenEdge.CommonInfrastructure.Server.SecurityManager abstract INHERITS <a href="../../../OpenEdge/CommonInfrastructure/Common/SecurityManager.cls.html" title="OpenEdge.CommonInfrastructure.Common.SecurityManager" target="classFrame">SecurityManager</a> IMPLEMENTS <a href="../../../OpenEdge/CommonInfrastructure/Server/ISecurityManager.cls.html" title="OpenEdge.CommonInfrastructure.Server.ISecurityManager" target="classFrame">ISecurityManager</a> </p>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
				<A NAME="property_summary"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
				<B>Property Summary</B></FONT></TH>
				</TR>
				
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../../OpenEdge/CommonInfrastructure/Common/ITenantManager.cls.html" title="OpenEdge.CommonInfrastructure.Common.ITenantManager" target="classFrame">ITenantManager</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#property.TenantManager'>TenantManager</a>
          </b> PROTECTED GET SET 
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
				</TABLE>&nbsp;<P>
				
				<A NAME="method_summary"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
				<B>Method Summary</B></FONT></TH>
				</TR>
				
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#(openedge.commoninfrastructure.common.iservicemanager,openedge.commoninfrastructure.common.icomponentinfo)'>CONSTRUCTOR </a>
          </b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IServiceManager.cls.html" title="OpenEdge.CommonInfrastructure.Common.IServiceManager" target="classFrame">IServiceManager</a> poServiceManager, <a href="../../../OpenEdge/CommonInfrastructure/Common/IComponentInfo.cls.html" title="OpenEdge.CommonInfrastructure.Common.IComponentInfo" target="classFrame">IComponentInfo</a> poComponentInfo)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#createcontextobject(character,character)'> CreateContextObject</a>
          </b>(CHARACTER pcUserName, CHARACTER pcUserDomain)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a IUserContext object for a validated user/domain. Will usually be
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#destroycomponent()'> DestroyComponent</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#endsession(longchar)'> EndSession</a>
          </b>(LONGCHAR pcContextId)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ends a user's session (not a log out, but the opposite of EstablishSession)
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#establishsession(longchar)'> EstablishSession</a>
          </b>(LONGCHAR pcContextId)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Validates that the passed context is valid and that the session can be established.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#establishsession(openedge.commoninfrastructure.common.iusercontext)'> EstablishSession</a>
          </b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poContext)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Validates that the passed context is valid and that the session can be established.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>CHARACTER</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#finddomainkey(openedge.commoninfrastructure.common.iusercontext)'> FindDomainKey</a>
          </b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poContext)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Finds/retrieves/calculates a domain key for given context.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code><a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a></code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#getpendingcontext(longchar)'> GetPendingContext</a>
          </b>(LONGCHAR pcContextId)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#initialize()'> Initialize</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#loadauthenticationdomains()'> LoadAuthenticationDomains</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Loads the security authentication domains for the application.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#sealusercredentials(openedge.commoninfrastructure.common.iusercontext)'> SealUserCredentials</a>
          </b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poUserContext)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#setusercontext(openedge.commoninfrastructure.common.iusercontext)'> SetUserContext</a>
          </b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poUserContext)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Merges the passed context into the current user's context. The
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#unloadauthenticationdomains()'> UnloadAuthenticationDomains</a>
          </b>()
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Unloads the security authentication domains for the application.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>LONGCHAR</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#userlogin(character,character,character)'> UserLogin</a>
          </b>(CHARACTER pcUserName, CHARACTER pcUserDomain, CHARACTER pcPassword)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#userlogout(longchar)'> UserLogout</a>
          </b>(LONGCHAR pcContextId)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Logs a user out of the application.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#userlogout(openedge.commoninfrastructure.common.iusercontext)'> UserLogout</a>
          </b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poContext)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Logs a user out of the application.
      </td>
    </tr>
    <tr bgcolor='white' class='TableRowColor'>
      <td align='right' valign='top' width='1%'>
        <font size='-1'>
          <code>VOID</code>
        </font>
      </td>
      <td>
        <code>
          <b>
            <a href='#validatecredentials(character,character,character)'> ValidateCredentials</a>
          </b>(CHARACTER pcUserName, CHARACTER pcUserDomain, CHARACTER pcPassword)
        </code><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      </td>
    </tr>
				</TABLE>&nbsp;<P>
				
				<A NAME="property_detail"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
				<B>Property Detail</B></FONT></TH>
				</TR></TABLE>
				
    <a name='property.TenantManager'><!-- --></a>
    <h3>TenantManager</h3>
    <code><a href="../../../OpenEdge/CommonInfrastructure/Common/ITenantManager.cls.html" title="OpenEdge.CommonInfrastructure.Common.ITenantManager" target="classFrame">ITenantManager</a> PROTECTED GET SET </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
				<A NAME="method_detail"><!-- --></A>
				<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
				<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
				<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
				<B>Method Detail</B></FONT></TH>
				</TR></TABLE>
				
    <a name='(openedge.commoninfrastructure.common.iservicemanager,openedge.commoninfrastructure.common.icomponentinfo)'><!-- --></a>
    <h3>CONSTRUCTOR</h3>
    <code>PUBLIC  
      <b>CONSTRUCTOR</b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IServiceManager.cls.html" title="OpenEdge.CommonInfrastructure.Common.IServiceManager" target="classFrame">IServiceManager</a> poServiceManager, <a href="../../../OpenEdge/CommonInfrastructure/Common/IComponentInfo.cls.html" title="OpenEdge.CommonInfrastructure.Common.IComponentInfo" target="classFrame">IComponentInfo</a> poComponentInfo)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='createcontextobject(character,character)'><!-- --></a>
    <h3>CreateContextObject</h3>
    <code>PROTECTED  <a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a>
      <b>CreateContextObject</b>(CHARACTER pcUserName, CHARACTER pcUserDomain)
    </code>
    <dl>
      <dd>Creates a IUserContext object for a validated user/domain. Will usually be <p> </dd>
      <dd>overridden to add more details. </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>character - The user domain<br/></dd>
          <dt>
            <b>Returns:</b>
          </dt>
          <dd>IUserContext The user's context object</dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='destroycomponent()'><!-- --></a>
    <h3>DestroyComponent</h3>
    <code>OVERRIDE PUBLIC  VOID
      <b>DestroyComponent</b>()
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='endsession(longchar)'><!-- --></a>
    <h3>EndSession</h3>
    <code>PUBLIC  VOID
      <b>EndSession</b>(LONGCHAR pcContextId)
    </code>
    <dl>
      <dd>Ends a user's session (not a log out, but the opposite of EstablishSession) <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>longchar - The context ID identifying the user who's session is being ended.<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='establishsession(longchar)'><!-- --></a>
    <h3>EstablishSession</h3>
    <code>PUBLIC  VOID
      <b>EstablishSession</b>(LONGCHAR pcContextId)
    </code>
    <dl>
      <dd>Validates that the passed context is valid and that the session can be established. <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>longchar - A user context id.<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='establishsession(openedge.commoninfrastructure.common.iusercontext)'><!-- --></a>
    <h3>EstablishSession</h3>
    <code>PUBLIC  VOID
      <b>EstablishSession</b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poContext)
    </code>
    <dl>
      <dd>Validates that the passed context is valid and that the session can be established. <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>IUserContext - The passed-in user context to validate.<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='finddomainkey(openedge.commoninfrastructure.common.iusercontext)'><!-- --></a>
    <h3>FindDomainKey</h3>
    <code> CHARACTER
      <b>FindDomainKey</b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poContext)
    </code>
    <dl>
      <dd>Finds/retrieves/calculates a domain key for given context. <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>IUserContext - The context for which to find the key<br/></dd>
          <dt>
            <b>Returns:</b>
          </dt>
          <dd>character The domain key for the given context.</dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='getpendingcontext(longchar)'><!-- --></a>
    <h3>GetPendingContext</h3>
    <code>PUBLIC  <a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a>
      <b>GetPendingContext</b>(LONGCHAR pcContextId)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='initialize()'><!-- --></a>
    <h3>Initialize</h3>
    <code>OVERRIDE PUBLIC  VOID
      <b>Initialize</b>()
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='loadauthenticationdomains()'><!-- --></a>
    <h3>LoadAuthenticationDomains</h3>
    <code> VOID
      <b>LoadAuthenticationDomains</b>()
    </code>
    <dl>
      <dd>Loads the security authentication domains for the application. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='sealusercredentials(openedge.commoninfrastructure.common.iusercontext)'><!-- --></a>
    <h3>SealUserCredentials</h3>
    <code>PROTECTED  VOID
      <b>SealUserCredentials</b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poUserContext)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='setusercontext(openedge.commoninfrastructure.common.iusercontext)'><!-- --></a>
    <h3>SetUserContext</h3>
    <code>OVERRIDE PUBLIC  VOID
      <b>SetUserContext</b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poUserContext)
    </code>
    <dl>
      <dd>Merges the passed context into the current user's context. The <p> </dd>
      <dd>default is to replace the current context completely. </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>IUserContext - The context to merge.<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='unloadauthenticationdomains()'><!-- --></a>
    <h3>UnloadAuthenticationDomains</h3>
    <code> VOID
      <b>UnloadAuthenticationDomains</b>()
    </code>
    <dl>
      <dd>Unloads the security authentication domains for the application. <p> </dd>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='userlogin(character,character,character)'><!-- --></a>
    <h3>UserLogin</h3>
    <code>OVERRIDE PUBLIC  LONGCHAR
      <b>UserLogin</b>(CHARACTER pcUserName, CHARACTER pcUserDomain, CHARACTER pcPassword)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
    <a name='userlogout(longchar)'><!-- --></a>
    <h3>UserLogout</h3>
    <code>PUBLIC  VOID
      <b>UserLogout</b>(LONGCHAR pcContextId)
    </code>
    <dl>
      <dd>Logs a user out of the application. <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>longchar - The user context ID.<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='userlogout(openedge.commoninfrastructure.common.iusercontext)'><!-- --></a>
    <h3>UserLogout</h3>
    <code>PUBLIC  VOID
      <b>UserLogout</b>(<a href="../../../OpenEdge/CommonInfrastructure/Common/IUserContext.cls.html" title="OpenEdge.CommonInfrastructure.Common.IUserContext" target="classFrame">IUserContext</a> poContext)
    </code>
    <dl>
      <dd>Logs a user out of the application. <p> </dd>
      <dd>
        <dl><!-- -->
          <dt>
            <b>Parameters:</b>
          </dt>
          <dd>IUserContext - The (validated) user context object for the given credentials.<br/></dd>
        </dl>
      </dd>
    </dl>
    <hr />
    <a name='validatecredentials(character,character,character)'><!-- --></a>
    <h3>ValidateCredentials</h3>
    <code> VOID
      <b>ValidateCredentials</b>(CHARACTER pcUserName, CHARACTER pcUserDomain, CHARACTER pcPassword)
    </code>
    <dl>
      <dd>
        <dl><!-- --></dl>
      </dd>
    </dl>
    <hr />
  </body>
</html>